function getUserInfo() {
    $.ajax({
      url: '/my/user/userinfo',
      success: function (res) {
        // console.log(res);
        if (res.status === 0) {
          // 1. 设置欢迎你，xxx(优先使用昵称)
          var name = res.data.nickname || res.data.username;
          $('.username').text(name);
  
          // 2. 设置头像（优先使用图片）
          if (res.data.user_pic) {
            // 说明有图片
            $('.layui-nav-img').attr('src', res.data.user_pic).show();
            $('.text-avatar').hide();
          } else {
            // 说明没有图片(截取名字的第一个字，转大写)
            var first = name.substr(0, 1).toUpperCase();
            // show方法作用是恢复元素默认的样式（span默认就是行内元素，show会把span设置为display:inline；div默认是块级元素，show会把div设置为display: block）
            $('.text-avatar').text(first).css('display', 'inline-block');
          }
        }
      },
      // 必须加如下请求头，否则会提示身份认证失败
          headers: {
        Authorization: localStorage.getItem('token')
      },
         // 如果恰好在获取用户信息时，token过期了，就不会获取到正确的响应，而是得到身份认证失败的响应，所以当请求完成后，判断一下
      complete: function (xhr) {
        var res = xhr.responseJSON;
        if (res && res.status === 1 && res.message === '身份认证失败') {
          // 移除过期的token
          localStorage.removeItem('token');
          // 跳转到登录页
          location.href = './login.html';
        }
      }
    });
  }
getUserInfo();
  
// --------------  退出功能 ---------------------
// 退出的时候，两个操作
// - 删除token
// - 页面跳转到登录页面
$('#logout').click(function () {
    // 弹出层，询问是否要退出
    layer.confirm('你确定退出吗？', function (index) {
        //do something
        // 如果点击了确定，删除token，页面跳转
        localStorage.removeItem('token');
        location.href = './login.html';
        layer.close(index); // 关闭当前弹出层
    });
});